package com.gjy.scala.funtion

object HigherOrderFunction {
  def main(args: Array[String]): Unit = {

    def f(n: Int): Int = {
      println("调用了f函数")
      n
    }

    println(f(0))

    // 1. 函数作为值进行传递

    println(" 函数作为值进行传递")
    val f1 = f _
    val f2 = f(_)
    val f3: Int => Int = f

    println("==============")
    println(f1)
    println(f2)
    println(f3)

    println("==============")

    println(f1(1))
    println(f2(2))
    println(f3(3))

    def fun(): Int = {
      println("调用了fun函数")
      1
    }
  }
}
